package com.scs.application.modules.msg.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.scs.application.core.entity.DataEntity;
import com.scs.application.modules.upgrade.db.annotation.EntityClassAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityFieldAnnotation;
import com.scs.application.modules.upgrade.db.enums.EntityFieldType;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
/**
 * <p>
 *
 * </p>
 */
@Data
@Accessors(chain = true)
@EntityClassAnnotation(remark = "院内通知信息表")
@TableName("msg_inner_notice")
public class InnerNotice extends DataEntity {


    // id ,在父类中处理

    @EntityFieldAnnotation(
            text = "标题",
            length = "100",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String title;

    @EntityFieldAnnotation(
            text = "内容",
            length = "300",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String content;

    @EntityFieldAnnotation(
            text = "优先级",
            length = "1",
            not_null = false,
            default_value = "",
            comment = "（L：低；M：中；H：高）"
    )
    private String priority;

    @EntityFieldAnnotation(
            text = "内容类型",
            length = "20",
            not_null = true,
            default_value = "",
            comment = "（announce公告 news站内信）"
    )
    private String contentType;

    @EntityFieldAnnotation(
            text = "收件人类型",
            length = "5",
            not_null = false,
            default_value = "",
            comment = "（all：全部；user：用户 ；dept：部门；role：角色）"
    )
    private String receiverType;

    @EntityFieldAnnotation(
            text = "收件人群体",
            type = EntityFieldType.TEXT,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String receiverGroup;

    @EntityFieldAnnotation(
            text = "收件人账号字符串",
            type = EntityFieldType.TEXT,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String receiverCodes;

    @EntityFieldAnnotation(
            text = "收件人名称字符串",
            type = EntityFieldType.TEXT,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String receiverNames;

    @EntityFieldAnnotation(
            text = "发送人",
            length = "255",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String sender;

    @EntityFieldAnnotation(
            text = "发送时间",
            length = "",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private Date gmtSend;


    // creator ,在父类中处理


    // gmt_create ,在父类中处理


    // modifier ,在父类中处理


    // gmt_modified ,在父类中处理

    @EntityFieldAnnotation(
            text = "备注",
            length = "200",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String remarks;


    @EntityFieldAnnotation(
            text = "关联主键",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String refid;

}
